Bibliography-style hacking

This document starts (and ends) with Section [*], because in reality it is the final section of ``BIEM BTEXing'' [4], the general documentation for BIEM BTEX. But that document was meant for all BIEM BTEX users, while this one is just for style designers, so the two are physically separate. Still, you should be completely familiar with ``BIEM BTEXing'', and all references in this document to sections and section numbers assume that the two documents are one.

This section, along with the standard-style documentation file btxbst.doc, should explain how to modify existing style files and to produce new ones. If you're a serious style hacker you should be familiar with van Leunen [7] for points of style, with Lamport [3] and Knuth [2] for formatting matters, and perhaps with Scribe [6] for compatibility details. And while you're at it, if you don't read the great little book by Strunk and White [5], you should at least look at its entries in the database and the reference list to see how BIEM BTEX handles multiple names.

To create a new style, it's best to start with an existing style that's close to yours, and then modify that. This is true even if you're simply updating an old style for BIEM BTEX version 0.99 (I've updated four nonstandard styles, so I say this with some experience). If you want to insert into a new style some function you'd written for an old (version 0.98i) style, keep in mind that the order of the arguments to the assignment (:=) function has been reversed. When you're finished with your style, you may want to try running it on the entire XAMPL.BIB database to make sure it handles all the standard entry types.

If you find any bugs in the standard styles, or if there are things you'd like to do with bibliography-style files but can't, please complain to Oren Patashnik.



Subsections